package com.xltq.dao;

import com.xltq.entity.User;

public interface IUserDao {
    /**
     * 根据用户名查询用户是否存在
     *
     * @param username 用户名
     * @return 返回结果集封装在User实体类对象中
     * @throws Exception 定义抛出异常
     */
    User queryUserByName(String username) throws Exception;

    /**
     *注册信息添加到 User表中(注册用户)
     * @param user 封装数据的实体类
     * @return 受影响的行数
     * @throws Exception 定义抛出异常
     */
    int insertUser(User user) throws Exception;

    /**
     * 通过注册码(激活码) 查询用户
     * @param code 激活码
     * @return 查询到是 User对象信息
     * @throws Exception 定义抛出异常
     */
    User queryUserByCode(String code) throws Exception;

    /**
     * 通过查询激活码用户获取到用户信息 新型激活操作
     * @param uid 用户id信息
     * @return 受影响函数
     * @throws Exception 定义抛出异常
     */
    int updateStatusByUid(int uid) throws Exception;

    /**
     * 通过用户名和密码进行查询
     * @param username 用户名
     * @param password 密码
     * @return 查询到User集合
     * @throws Exception 定义抛出异常
     */
    User login(String username,String password) throws Exception;
}
